Distributed Arrays in the Functional Language Concurrent Clean

نویسنده

  • Pascal R. Serrarens
چکیده

In this paper, we show how distributed arrays can be implemented in Concurrent Clean without extensions to the language. We introduce the notion of remote values, associating a value at a remote processor with its location. By combining remote values with arrays we can build distributed arrays, having the same exibility as standard arrays. With the example of matrix-vector multiplication, we show that our distributed arrays are well suited to implement parallel algorithms with little overhead.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Parallel Elementwise Processable Functions in Concurrent Clean

The behaviour of concurrent and parallel programs can be specified in a functional style. Functional programming style has some inherent concurrent features. However, for a higher degree of expressing parallelism there is a need for new language constructs. In this paper we introduce Concurrent Clean moduls for evaluation strategies in order to control the evaluation degree, the dynamic behavio...

متن کامل

The Implementation and Efficiency of Arrays in Clean 1.1

We present a new approach to implementing arrays in a pure lazy functional programming language. The arrays can be updated destructively by using uniqueness typing, and the elements can be unboxed. We describe the implementation of these arrays in the functional programming language Clean 1.1. The performance of two sorting algorithms and a fast fourier transformation written in Clean using arr...

متن کامل

Functional Multicasting

Multicasting, where a message is sent from one processor to number of other processors, can optimise the communication for data-parallel functional computing. This paper describes the introduction of two multicast primitives in the functional language Concurrent Clean. The usage and performance are showed, with special emphasis on the usage in combination with distributed arrays. In a data-para...

متن کامل

High Level Specification of I/O in Functional Languages

The interface with the outside world has always been one of the weakest points of functional languages. It is not easy to incorporate I/O without being allowed to do side-effects. Furthermore, functional languages allow redexes to be evaluated in any order while I/O generally has to be performed in a very specific order. In this paper we present a new solution for the I/O problem which we have ...

متن کامل

Communication Issues regarding Parallel Functional Graph Rewriting

Efficient communication is the basis of an implementation of a parallel language on a distributed machine architecture. This article handles about the communication mechanism that is needed to support parallel graph rewriting in Concurrent Clean. The danger of deadlock is imminent at several levels of such a system. Communication problems and their solutions are closely related to memory manage...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997